home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: delta / whiteline CD Series - delta.iso / tex / style / misc / script.sty (.txt) < prev    next >
Texinfo Document  |  1995-11-25  |  21KB  |  577 lines

  1. % script.sty -- by Frank Neukam  (06 Jun 1992)
  2. % based on Leslie Lamport's report and book styles.
  3. \typeout{Document Style `script' V1.0 by Frank Neukam <06 Jun 1992>}
  4. \typeout{Extended Page-Size-Version 1.1 by Markus Kohm <25 Jul 1993>}
  5. \font\tensfb  =cmssbx10 scaled \magstep0
  6. \font\elvsfb  =cmssbx10 scaled \magstephalf
  7. \font\twlsfb  =cmssbx10 scaled \magstep1
  8. \font\frtnsfb =cmssbx10 scaled \magstep2
  9. \font\svtnsfb =cmssbx10 scaled \magstep3
  10. \font\twtysfb =cmssbx10 scaled \magstep4
  11. \font\twfvsfb =cmssbx10 scaled \magstep5
  12. \def\@ptsize{1}
  13. \@namedef{ds@10pt}{\def\@ptsize{0}}
  14. \@namedef{ds@11pt}{\def\@ptsize{1}}
  15. \@namedef{ds@12pt}{\def\@ptsize{2}}
  16. \def\ds@draft{\overfullrule 5pt}
  17. \def\ds@twoside{\@twosidetrue \@mparswitchtrue}
  18. \def\mk@pagesize{DINA4}
  19. \@namedef{ds@DINA3}{\def\mk@pagesize{DINA3}}
  20. \@namedef{ds@DINA4}{\def\mk@pagesize{DINA4}}
  21. \@namedef{ds@DINA5}{\def\mk@pagesize{DINA5}}
  22. \@namedef{ds@DINA6}{\def\mk@pagesize{DINA6}}
  23. \@namedef{ds@DINA3l}{\def\mk@pagesize{DINA3l}}
  24. \@namedef{ds@DINA4l}{\def\mk@pagesize{DINA4l}}
  25. \@namedef{ds@DINA5l}{\def\mk@pagesize{DINA5l}}
  26. \@namedef{ds@DINA6l}{\def\mk@pagesize{DINA6l}}
  27. \@options
  28. \input script1\@ptsize.sty\relax
  29. \normalsize
  30. \@namedef{pssc@DINA3}{\typeout{Use pagesize DIN-A3}\sc@pw 297mm \sc@ph 420mm}
  31. \@namedef{pssc@DINA4}{\typeout{Use pagesize DIN-A4}\sc@pw 210mm \sc@ph 297mm}
  32. \@namedef{pssc@DINA5}{\typeout{Use pagesize DIN-A5}\sc@pw 148.5mm \sc@ph 210mm}
  33. \@namedef{pssc@DINA6}{\typeout{Use pagesize DIN-A6}\sc@pw 105mm \sc@ph 148.5mm}
  34. \@namedef{pssc@DINA3l}{\typeout{Use pagesize DIN-A3-Landscape}\sc@pw 420mm \sc@ph 297mm}
  35. \@namedef{pssc@DINA4l}{\typeout{Use pagesize DIN-A4-Landscape}\sc@pw 297mm \sc@ph 210mm}
  36. \@namedef{pssc@DINA5l}{\typeout{Use pagesize DIN-A5-Landscape}\sc@pw 210mm \sc@ph 148.5mm}
  37. \@namedef{pssc@DINA6l}{\typeout{Use pagesize DIN-A6-Landscape}\sc@pw 148.5mm \sc@ph 105mm}
  38. \newif\if@hincl
  39. \def\headincludeon{\@hincltrue}
  40. \def\headincludeoff{\@hinclfalse}
  41. \newif\if@hsl
  42. \def\headseplineon{\@hsltrue \@hincltrue}
  43. \def\headseplineoff{\@hslfalse \@hinclfalse}
  44. \headseplineoff
  45. \newdimen\sc@pw
  46. \newdimen\sc@ph
  47. \newdimen\sc@bcor
  48. \newcount\sc@div
  49. \newdimen\sc@hblk
  50. \newdimen\sc@vblk
  51. \newdimen\sc@temp
  52. \@nameuse{pssc@\mk@pagesize}
  53. \def\typearea{\@ifnextchar [{\@typearea}{\@typearea[0mm]}}
  54. \def\@typearea[#1]#2{
  55.  \sc@bcor #1
  56.  \sc@div=#2
  57.  \sc@hblk \sc@pw
  58.  \advance \sc@hblk by -\sc@bcor
  59.  \divide\sc@hblk by \sc@div
  60.  \oddsidemargin -1in
  61.  \evensidemargin -1in
  62.  \if@twoside
  63.   \advance\oddsidemargin by \sc@hblk
  64.   \advance\oddsidemargin by \sc@bcor
  65.   \advance\evensidemargin by 2\sc@hblk
  66.  \else
  67.   \advance\oddsidemargin by 1.5\sc@hblk
  68.   \advance\oddsidemargin by \sc@bcor
  69.   \evensidemargin\oddsidemargin
  70.  \textwidth \sc@pw
  71.  \advance\textwidth by -\sc@bcor
  72.  \advance\textwidth by -3\sc@hblk
  73.  \headheight 15pt
  74.  \headsep 1.5\baselineskip
  75.  \sc@vblk \sc@ph
  76.  \divide\sc@vblk by \sc@div
  77.  \sc@temp \sc@ph
  78.  \advance\sc@temp by -3\sc@vblk
  79.  \if@hincl
  80.   \advance\sc@temp by -\headheight
  81.   \advance\sc@temp by -\headsep
  82.  \textheight \topskip
  83.  \@whiledim\textheight<\sc@temp
  84.   \do{\advance\textheight by \baselineskip}
  85.  \topmargin \sc@vblk
  86.  \advance\topmargin by -1in
  87.  \if@hincl \else
  88.   \advance\topmargin by -\headheight
  89.   \advance\topmargin by -\headsep
  90.  \footskip 3.5\baselineskip
  91.  \if@twoside
  92.   \marginparwidth 1.5\sc@hblk
  93.  \else
  94.   \marginparwidth \sc@hblk
  95.  \marginparsep 1cc
  96.  \marginparpush 0.45\baselineskip}
  97. \def\areaset{\@ifnextchar [{\@areaset}{\@areaset[0mm]}}
  98. \def\@areaset[#1]#2#3{
  99.  \sc@bcor #1
  100.  \textwidth #2
  101.  \textheight #3
  102.  \sc@hblk \sc@pw
  103.  \advance\sc@hblk by -\sc@bcor
  104.  \advance\sc@hblk by -\textwidth
  105.  \divide\sc@hblk by 3
  106.  \oddsidemargin -1in
  107.  \evensidemargin -1in
  108.  \if@twoside
  109.   \advance\oddsidemargin by \sc@hblk
  110.   \advance\oddsidemargin by \sc@bcor
  111.   \advance\evensidemargin by 2\sc@hblk
  112.  \else
  113.   \advance\oddsidemargin by 1.5\sc@hblk
  114.   \advance\oddsidemargin by \sc@bcor
  115.   \evensidemargin\oddsidemargin
  116.  \headheight 15pt
  117.  \headsep 1.5\baselineskip
  118.  \sc@vblk \sc@ph
  119.  \advance\sc@vblk by -\textheight
  120.  \divide\sc@vblk by 3
  121.  \if@hincl
  122.   \advance\textheight by -\headheight
  123.   \advance\textheight by -\headsep
  124.  \topmargin \sc@vblk
  125.  \advance\topmargin by -1in
  126.  \if@hincl \else
  127.   \advance\topmargin by -\headheight
  128.   \advance\topmargin by -\headsep
  129.  \footskip 3.5\baselineskip
  130.  \if@twoside
  131.   \marginparwidth 1.5\sc@hblk
  132.  \else
  133.   \marginparwidth \sc@hblk
  134.  \marginparsep 1cc
  135.  \marginparpush 0.45\baselineskip}
  136. \ifcase \@ptsize\relax \typearea{8} \or \typearea{10} \or \typearea{12} \fi
  137. \parskip 0pt plus 1pt
  138. \parindent 1em
  139. \partopsep 3pt plus 2pt minus 2pt
  140. \footnotesep 0.6\baselineskip
  141. \skip\footins 0.75\baselineskip plus 4pt minus 2pt
  142. \skip\@mpfootins = \skip\footins
  143. \columnsep 1cc
  144. \columnseprule 0pt
  145. \floatsep 1\baselineskip plus 2pt minus 2pt
  146. \textfloatsep 20pt plus 2pt minus 4pt
  147. \intextsep 1\baselineskip plus 2pt minus 2pt
  148. \@maxsep 20pt
  149. \dblfloatsep 1\baselineskip plus 2pt minus 2pt
  150. \dbltextfloatsep 20pt plus 2pt minus 4pt
  151. \@dblmaxsep 20pt
  152. \@fptop 0pt plus 1fil
  153. \@fpsep 0.7\baselineskip plus 2fil
  154. \@fpbot 0pt plus 1fil
  155. \@dblfptop 0pt plus 1fil
  156. \@dblfpsep 0.7\baselineskip plus 2fil
  157. \@dblfpbot 0pt plus 1fil
  158. \arraycolsep 5pt
  159. \tabcolsep 6pt
  160. \arrayrulewidth 0.4pt
  161. \doublerulesep 2pt
  162. \fboxsep 3pt
  163. \fboxrule 0.4pt
  164. \tabbingsep \labelsep
  165. \labelsep .5em
  166. \leftmargini 2.5em
  167. \leftmarginii 2.2em
  168. \leftmarginiii 1.87em
  169. \leftmarginiv 1.7em
  170. \leftmarginv 1em
  171. \leftmarginvi 1em
  172. \leftmargin\leftmargini
  173. \labelwidth\leftmargini
  174. \advance\labelwidth-\labelsep
  175. \def\@listI{\leftmargin\leftmargini
  176.  \topsep 0.8em plus 0.2em minus 0.4em
  177.  \parsep 0.4em plus 2pt minus 1pt
  178.  \itemsep \parsep}
  179. \let\@listi\@listI
  180. \@listi
  181. \def\@listii{\leftmargin\leftmarginii
  182.  \labelwidth\leftmarginii\advance\labelwidth-\labelsep
  183.  \topsep 0.4em plus 2pt minus 1pt
  184.  \parsep 0.2em plus 1pt minus 1pt
  185.  \itemsep \parsep}
  186. \def\@listiii{\leftmargin\leftmarginiii
  187.  \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
  188.  \topsep 0.2em plus 1pt minus 1pt
  189.  \parsep \z@
  190.  \partopsep 1pt plus 0pt minus 1pt
  191.  \itemsep \topsep}
  192. \def\@listiv{\leftmargin\leftmarginiv
  193.  \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
  194. \def\@listv{\leftmargin\leftmarginv
  195.  \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
  196. \def\@listvi{\leftmargin\leftmarginvi
  197.  \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
  198. \@lowpenalty 51
  199. \@medpenalty 151
  200. \@highpenalty 301
  201. \@beginparpenalty -\@lowpenalty
  202. \@endparpenalty -\@lowpenalty
  203. \@itempenalty -\@lowpenalty
  204. \def\theenumi{\arabic{enumi}}
  205. \def\theenumii{\alph{enumii}}
  206. \def\theenumiii{\roman{enumiii}}
  207. \def\theenumiv{\Alph{enumiv}}
  208. \def\labelenumi{\theenumi.}
  209. \def\labelenumii{\theenumii)}
  210. \def\labelenumiii{\theenumiii.}
  211. \def\labelenumiv{\theenumiv.}
  212. \def\p@enumii{\theenumi}
  213. \def\p@enumiii{\theenumi\theenumii)}
  214. \def\p@enumiv{\p@enumiii\theenumiii}
  215. \def\labelitemi{$\bullet$}
  216. \def\labelitemii{\bf --}
  217. \def\labelitemiii{$\triangleright$}
  218. \def\labelitemiv{$\cdot$}
  219. \newcounter{part}
  220. \newcounter {chapter}
  221. \newcounter {section}[chapter]
  222. \newcounter {subsection}[section]
  223. \newcounter {subsubsection}[subsection]
  224. \newcounter {paragraph}[subsubsection]
  225. \newcounter {subparagraph}[paragraph]
  226. \def\thepart {\Roman{part}}
  227. \def\thechapter {\arabic{chapter}}
  228. \def\thesection {\thechapter.\arabic{section}}
  229. \def\thesubsection {\thesection.\arabic{subsection}}
  230. \def\thesubsubsection {\thesubsection .\arabic{subsubsection}}
  231. \def\theparagraph {\thesubsubsection.\arabic{paragraph}}
  232. \def\thesubparagraph {\theparagraph.\arabic{subparagraph}}
  233. \setcounter{secnumdepth}{2}
  234. \setcounter{tocdepth}{2}
  235. \def\verse{\let\\=\@centercr
  236.  \list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent
  237.  \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}
  238. \let\endverse\endlist
  239. \def\quotation{\list{}{\listparindent 1em
  240.  \itemindent\listparindent
  241.  \rightmargin\leftmargin\parsep 0pt plus 1pt}\item[]}
  242. \let\endquotation=\endlist
  243. \def\quote{\list{}{\rightmargin\leftmargin}\item[]}
  244. \let\endquote=\endlist
  245. \def\descriptionlabel#1{\hspace\labelsep \sfb #1}
  246. \def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin
  247.  \let\makelabel\descriptionlabel}}
  248. \let\enddescription\endlist
  249. \newdimen\descriptionmargin
  250. \descriptionmargin=3em
  251. \def\labelinglabel#1{#1\hfil\sc@septext}
  252. \def\labeling{\@ifnextchar [{\@labeling}{\@labeling[]}}
  253. \def\@labeling[#1]#2{\def\sc@septext{#1}
  254.  \list{}{\settowidth{\labelwidth}{#2#1}
  255.  \leftmargin\labelwidth \advance\leftmargin by \labelsep
  256.  \let\makelabel\labelinglabel}}
  257. \let\endlabeling\endlist
  258. \def\marginline#1{\marginpar%
  259.  {\if@twoside \ifodd\c@page \raggedright \else \raggedleft \fi
  260.   \else \raggedright \fi #1}}
  261. \def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
  262.  \else \newpage \fi \thispagestyle{empty}\c@page\z@}
  263. \def\endtitlepage{\if@restonecol\twocolumn \else \newpage \fi}
  264. \def\next@tpage{\newpage\thispagestyle{empty}\null}
  265. \def\@extratitle{}
  266. \long\def\extratitle#1{\def\@extratitle{#1}}
  267. \def\@titlehead{}
  268. \long\def\titlehead#1{\def\@titlehead{#1}}
  269. \def\@subject{}
  270. \def\subject#1{\def\@subject{#1}}
  271. \def\@publishers{}
  272. \def\publishers#1{\def\@publishers{#1}}
  273. \def\@uppertitleback{}
  274. \long\def\uppertitleback#1{\def\@uppertitleback{#1}}
  275. \def\@lowertitleback{}
  276. \long\def\lowertitleback#1{\def\@lowertitleback{#1}}
  277. \def\@dedication{}
  278. \def\dedication#1{\def\@dedication{#1}}
  279. \def\maketitle{\@ifnextchar [{\@maketitle}{\@maketitle[1]}}
  280. \def\@maketitle[#1]{\bgroup \@restonecolfalse
  281.  \if@twocolumn \@restonecoltrue\onecolumn \else \newpage \fi
  282.  \thispagestyle{empty}\null
  283.  \setcounter{page}{#1}
  284.  \let\footnotesize\small
  285.  \let\footnoterule\relax
  286.  \ifx\@extratitle\@empty \else
  287.   \noindent\@extratitle \next@tpage \if@twoside \next@tpage \fi
  288.  \ifx\@titlehead\@empty \else
  289.   \noindent\begin{minipage}[t]{\textwidth}
  290.   \@titlehead
  291.   \end{minipage}\par
  292.  \null \vfill
  293.  \ifx\@subject\@empty \else
  294.   {\centering \Large \@subject \par}
  295.   \vskip 3em
  296.  {\centering \huge \sfb \@title \par}
  297.  \vskip 3em
  298.  {\centering \Large \lineskip 0.75em
  299.   \begin{tabular}[t]{c}\@author
  300.   \end{tabular}\par}
  301.  \vskip 1.5em
  302.  {\centering \Large \@date \par}
  303.  \vskip 0pt plus 3fill
  304.  {\centering \Large \@publishers \par}
  305.  \vskip 3em
  306.  \par \@thanks
  307.  \if@twoside \next@tpage
  308.   \noindent\begin{minipage}[t]{\textwidth}
  309.   \@uppertitleback
  310.   \end{minipage}\par
  311.   \vfill
  312.   \noindent\begin{minipage}[b]{\textwidth}
  313.   \@lowertitleback
  314.   \end{minipage}
  315.  \ifx\@dedication\@empty \else
  316.   \next@tpage \vfill
  317.   {\centering \Large \@dedication \par}
  318.   \vskip 0pt plus 3fill
  319.   \if@twoside \next@tpage \fi
  320.  \if@restonecol\twocolumn \else \newpage \fi
  321.  \egroup
  322.  \setcounter{footnote}{0}
  323.  \let\thanks\relax \gdef\@extratitle{}\gdef\@titlehead{}\gdef\@subject{}%
  324.  \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\gdef\@publishers{}%
  325.  \gdef\@uppertitleback{}\gdef\@lowertitleback{}\gdef\@dedication{}%
  326.  \let\maketitle\relax \let\@maketitle\relax}
  327. \newif\if@abstrt
  328. \def\abstracton{\@abstrttrue}
  329. \def\abstractoff{\@abstrtfalse}
  330. \def\abstractname{Abstract}
  331. \def\abstract{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
  332.  \else \newpage \fi \thispagestyle{empty} \null \vfil
  333.  \if@abstrt \begin{center} {\sfb \abstractname} \end{center}\fi}
  334. \def\endabstract{\par \vfil \null
  335.  \if@twoside \next@tpage \fi
  336.  \if@restonecol\twocolumn \else \newpage \fi}
  337. \def\partname{Part}
  338. \def\part{\cleardoublepage \thispagestyle{empty} \if@twocolumn \onecolumn
  339.  \@tempswatrue \else \@tempswafalse \fi \null \vfil \secdef\@part\@spart}
  340. \def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax \refstepcounter{part}
  341.  \addcontentsline{toc}{part}{{\bf \thepart}\hspace{1em}#1}\else
  342.  \addcontentsline{toc}{part}{#1}\fi \markboth{}{}
  343.  {\centering \ifnum \c@secnumdepth >-2\relax \huge \sfb\partname{}
  344.  {\bf \thepart} \par \vskip 20pt \fi \Huge \sfb #2\par}\@endpart}
  345. \def\@spart#1{{\centering \Huge \sfb #1\par}\@endpart}
  346. \def\@endpart{\vfil\newpage \if@twoside \null \thispagestyle{empty}
  347.  \newpage \fi \if@tempswa \twocolumn \fi}
  348. \def\chaptername{Chapter}
  349. \def\@chapapp{\chaptername}
  350. \def\chaptermark#1{}
  351. \def\chapter{\clearpage \thispagestyle{plain} \global\@topnum\z@
  352.  \@afterindentfalse \secdef\@chapter\@schapter}
  353. \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
  354.   \refstepcounter{chapter}
  355.   \typeout{\@chapapp\space\thechapter.}
  356.   \addcontentsline{toc}{chapter}{\protect \numberline{\thechapter.}#1}
  357.  \else
  358.   \addcontentsline{toc}{chapter}{#1}\fi
  359.  \chaptermark{#1}
  360.  \addtocontents{lof}{\protect\addvspace{10pt}}
  361.  \addtocontents{lot}{\protect\addvspace{10pt}}
  362.  \if@twocolumn \@topnewpage[\@makechapterhead{#2}]
  363.  \else \@makechapterhead{#2} \fi \@afterheading}
  364. \def\@schapter#1{\if@twocolumn \@topnewpage[\@makeschapterhead{#1}]
  365.  \else \@makeschapterhead{#1} \fi \@afterheading}
  366. \def\@makechapterhead#1{\vspace*{50pt} {\Huge \sfb
  367.  \@hangfrom{\ifnum \c@secnumdepth >\m@ne \thechapter. \fi}%
  368.  {\raggedright \interlinepenalty \@M #1\par}} \nobreak \vskip 40pt}
  369. \def\@makeschapterhead#1{\vspace*{50pt} {\Huge \sfb \@hangfrom{}%
  370.  {\raggedright \interlinepenalty \@M #1\par}} \nobreak \vskip 40pt}
  371. \def\addchap{\clearpage \thispagestyle{plain} \global\@topnum\z@
  372.  \@afterindentfalse \secdef\@addchap\@saddchap}
  373. \def\@addchap[#1]#2{\typeout{#2}
  374.  \addcontentsline{toc}{chapter}{#1}
  375.  \if@twoside \markboth{#1}{}\else \markright{#1} \fi
  376.  \addtocontents{lof}{\protect\addvspace{10pt}}
  377.  \addtocontents{lot}{\protect\addvspace{10pt}}
  378.  \if@twocolumn \@topnewpage[\@makeschapterhead{#2}]
  379.  \else \@makeschapterhead{#2} \fi \@afterheading}
  380. \def\@saddchap#1{\markboth{}{}
  381.  \if@twocolumn \@topnewpage[\@makeschapterhead{#1}]
  382.  \else \@makeschapterhead{#1} \fi \@afterheading}
  383. \def\appendixname{Appendix}
  384. \def\appendix{\par
  385.  \setcounter{chapter}{0}
  386.  \setcounter{section}{0}
  387.  \def\@chapapp{\appendixname}
  388.  \def\thechapter{\Alph{chapter}}}
  389. \def\section{\@startsection {section}{1}{\z@}{-3.5ex plus -1ex minus
  390.  -.2ex}{2.3ex plus .2ex}{\Large \sfb}}
  391. \def\subsection{\@startsection{subsection}{2}{\z@}{-3.25ex plus -1ex minus
  392.  -.2ex}{1.5ex plus .2ex}{\large \sfb}}
  393. \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-3.25ex plus -1ex
  394.  minus -.2ex}{1.5ex plus .2ex}{\sfb}}
  395. \def\paragraph{\@startsection{paragraph}{4}{\z@}{3.25ex plus 1ex minus
  396.  .2ex}{-1em}{\sfb}}
  397. \def\subparagraph{\@startsection{subparagraph}{4}{\parindent}{3.25ex plus
  398.  1ex minus .2ex}{-1em}{\sfb}}
  399. \def\minisec#1{\@afterindentfalse \vskip 1.5ex {\parindent 0pt \raggedright
  400.  \sfb #1\par\nobreak}\@afterheading}
  401. \def\contentsname{Contents}
  402. \def\@pnumwidth{1.55em}
  403. \def\@tocrmarg {2.55em}
  404. \def\@dotsep{4.5}
  405. \def\tableofcontents{\@restonecolfalse
  406.  \if@twocolumn\@restonecoltrue\onecolumn\fi
  407.  \chapter*{\contentsname \@mkboth{\contentsname}{\contentsname}}
  408.  \@starttoc{toc}\if@restonecol\twocolumn\fi}
  409. \def\l@part#1#2{\addpenalty{-\@highpenalty}
  410.  \addvspace{2.25em plus 1pt} \begingroup
  411.  \@tempdima 3em \parindent \z@ \rightskip \@pnumwidth \parfillskip
  412.  -\@pnumwidth
  413.  {\sfb \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}}\par
  414.  \nobreak \global\@nobreaktrue \everypar{\global\@nobreakfalse\everypar{}}
  415.  \endgroup}
  416. \def\l@chapter#1#2{\addpenalty{-\@highpenalty}
  417.  \vskip 1.0em plus 1pt \@tempdima 1.5em \begingroup
  418.  \parindent \z@ \rightskip \@pnumwidth
  419.  \parfillskip -\@pnumwidth
  420.  \sfb \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
  421.  #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss #2}\par
  422.  \penalty\@highpenalty \endgroup}
  423. \def\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
  424. \def\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}}
  425. \def\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}}
  426. \def\l@paragraph{\@dottedtocline{4}{10em}{5em}}
  427. \def\l@subparagraph{\@dottedtocline{5}{12em}{6em}}
  428. \def\listfigurename{List of Figures}
  429. \def\listoffigures{\@restonecolfalse
  430.  \if@twocolumn\@restonecoltrue\onecolumn\fi
  431.  \chapter*{\listfigurename \@mkboth{\listfigurename}{\listfigurename}}
  432.  \@starttoc{lof}\if@restonecol\twocolumn\fi}
  433. \def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
  434. \def\listtablename{List of Tables}
  435. \def\listoftables{\@restonecolfalse
  436.  \if@twocolumn\@restonecoltrue\onecolumn\fi
  437.  \chapter*{\listtablename \@mkboth{\listtablename}{\listtablename}}
  438.  \@starttoc{lot}\if@restonecol\twocolumn\fi}
  439. \let\l@table\l@figure
  440. \def\bibname{Bibliography}
  441. \def\thebibliography#1{\chapter*{\bibname \@mkboth{\bibname}{\bibname}}
  442.  \list{[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
  443.  \advance\leftmargin\labelsep
  444.  \usecounter{enumi}}
  445.  \def\newblock{\hskip 0.11em plus 0.33em minus 0.07em}
  446.  \sloppy\clubpenalty4000\widowpenalty4000
  447.  \sfcode`\.=1000\relax}
  448. \let\endthebibliography=\endlist
  449. \def\indexname{Index}
  450. \newif\if@restonecol
  451. \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
  452.  \columnseprule \z@
  453.  \columnsep 35pt\twocolumn[\@makeschapterhead{\indexname}]
  454.  \@mkboth{\indexname}{\indexname}
  455.  \thispagestyle{plain}\parindent\z@
  456.  \parskip\z@ plus 0.3pt\relax\let\item\@idxitem}
  457. \def\@idxitem{\par\hangindent 40pt}
  458. \def\subitem{\par\hangindent 40pt \hspace*{20pt}}
  459. \def\subsubitem{\par\hangindent 40pt \hspace*{30pt}}
  460. \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
  461. \def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax}
  462. \@addtoreset{footnote}{chapter}
  463. \def\footnoterule{\kern-3\p@
  464.  \hrule width 0.4\columnwidth
  465.  \kern 2.6\p@}
  466. \long\def\@makefntext#1{\noindent \sc@temp\columnwidth%
  467.  \advance\sc@temp by -1.5em \hbox to 1em{\hss$^{\@thefnmark}$}\hskip .5em%
  468.  \parbox[t]{\sc@temp}{\parindent 0pt\parskip 0pt\hskip -.5em #1}}
  469. \@addtoreset{equation}{chapter}
  470. \def\theequation{\thechapter.\arabic{equation}}
  471. \setcounter{topnumber}{2}
  472. \def\topfraction{.7}
  473. \setcounter{bottomnumber}{1}
  474. \def\bottomfraction{.3}
  475. \setcounter{totalnumber}{3}
  476. \def\textfraction{.2}
  477. \def\floatpagefraction{.5}
  478. \setcounter{dbltopnumber}{2}
  479. \def\dbltopfraction{.7}
  480. \def\dblfloatpagefraction{.5}
  481. \long\def\@makecaption#1#2{\vskip 10pt \setbox\@tempboxa\hbox{#1: #2}
  482.  \ifdim \wd\@tempboxa >\hsize \@hangfrom{#1: }{#2\par}
  483.  \else \hbox to\hsize{\hfil\box\@tempboxa\hfil}
  484.  \fi}
  485. \def\figurename{Figure}
  486. \newcounter{figure}[chapter]
  487. \def\thefigure{\thechapter.\@arabic\c@figure}
  488. \def\fps@figure{tbp}
  489. \def\ftype@figure{1}
  490. \def\ext@figure{lof}
  491. \def\fnum@figure{\figurename{} \thefigure}
  492. \def\figure{\@float{figure}}
  493. \let\endfigure\end@float
  494. \@namedef{figure*}{\@dblfloat{figure}}
  495. \@namedef{endfigure*}{\end@dblfloat}
  496. \def\tablename{Table}
  497. \newcounter{table}[chapter]
  498. \def\thetable{\thechapter.\@arabic\c@table}
  499. \def\fps@table{tbp}
  500. \def\ftype@table{2}
  501. \def\ext@table{lot}
  502. \def\fnum@table{\tablename{} \thetable}
  503. \def\table{\@float{table}}
  504. \let\endtable\end@float
  505. \@namedef{table*}{\@dblfloat{table}}
  506. \@namedef{endtable*}{\end@dblfloat}
  507. \mark{{}{}}
  508. \if@twoside
  509.  \def\ps@plain{\let\@mkboth\@gobbletwo
  510.   \def\@evenhead{}%
  511.   \def\@oddhead{}%
  512.   \def\@evenfoot{\rm\thepage\hfil}%
  513.   \def\@oddfoot{\rm\hfil\thepage}}
  514.  \def\ps@headings{\let\@mkboth\markboth
  515.   \def\@evenhead{\vbox{\hsize=\textwidth
  516.    \hbox to \textwidth{\it\leftmark\hfil}
  517.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  518.   \def\@oddhead{\vbox{\hsize=\textwidth
  519.    \hbox to \textwidth{\it\hfil\rightmark}
  520.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  521.   \def\@evenfoot{\rm\thepage\hfil}%
  522.   \def\@oddfoot{\rm\hfil\thepage}%
  523.   \def\chaptermark##1{\markboth {\ifnum \c@secnumdepth >\m@ne
  524.    \thechapter. \ \fi ##1}{}}%
  525.   \def\sectionmark##1{\markright {\ifnum \c@secnumdepth >\z@
  526.    \thesection\ \ \fi ##1}}%
  527.   \def\subsectionmark##1{}}
  528.  \def\ps@myheadings{\let\@mkboth\@gobbletwo
  529.   \def\@evenhead{\vbox{\hsize=\textwidth
  530.    \hbox to \textwidth{\it\leftmark\hfil}
  531.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  532.   \def\@oddhead{\vbox{\hsize=\textwidth
  533.    \hbox to \textwidth{\it\hfil\rightmark}
  534.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  535.   \def\@evenfoot{\rm\thepage\hfil}%
  536.   \def\@oddfoot{\rm\hfil\thepage}%
  537.   \def\chaptermark##1{}%
  538.   \def\sectionmark##1{}%
  539.   \def\subsectionmark##1{}}
  540. \else
  541.  \def\ps@plain{\let\@mkboth\@gobbletwo
  542.   \def\@evenhead{}%
  543.   \def\@oddhead{}%
  544.   \def\@evenfoot{}%
  545.   \def\@oddfoot{\rm\hfil\thepage\hfil}}
  546.  \def\ps@headings{\let\@mkboth\markboth
  547.   \def\@evenhead{}%
  548.   \def\@oddhead{\vbox{\hsize=\textwidth
  549.    \hbox to \textwidth{\it\hfil\rightmark\hfil}
  550.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  551.   \def\@evenfoot{}%
  552.   \def\@oddfoot{\rm\hfil\thepage\hfil}%
  553.   \def\chaptermark##1{\markright {\ifnum \c@secnumdepth >\m@ne
  554.    \thechapter. \ \fi ##1}}%
  555.   \def\sectionmark##1{}%
  556.   \def\subsectionmark##1{}}
  557.  \def\ps@myheadings{\let\@mkboth\@gobbletwo
  558.   \def\@evenhead{}%
  559.   \def\@oddhead{\vbox{\hsize=\textwidth
  560.    \hbox to \textwidth{\it\hfil\rightmark\hfil}
  561.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  562.   \def\@evenfoot{}%
  563.   \def\@oddfoot{\rm\hfil\thepage\hfil}%
  564.   \def\chaptermark##1{}%
  565.   \def\sectionmark##1{}%
  566.   \def\subsectionmark##1{}}
  567. \def\today{\ifcase\month\or
  568.  January\or February\or March\or April\or May\or June\or
  569.  July\or August\or September\or October\or November\or December\fi
  570.  \space\number\day, \number\year}
  571. \@abstrttrue
  572. \ps@headings
  573. \pagenumbering{arabic}
  574. \onecolumn
  575. \if@twoside \else \raggedbottom \fi
  576. \frenchspacing
  577.